// vue.config.js

let proEnv = require('./config/pro.env'); // 生产环境
let uatEnv = require('./config/uat.env'); // 测试环境
let devEnv = require('./config/dev.env'); // 本地环境

const env = process.env.NODE_ENV;
let target = '';

const devProxy = ['/api', '/admin', '/room'];  // 代理

// 默认本地环境
if (env === 'production') {     // 生产环境
    target = proEnv.HOST_URL;
} else if (env === 'test') {    // 测试环境
    target = uatEnv.HOST_URL
} else {                        // 本地环境
    target = devEnv.HOST_URL;
}

// 生成代理配置对象
let proxyObj = {};
devProxy.forEach((value, index) => {
    proxyObj[value] = {
        target: target,
        changeOrigin: true, //是否跨域
        secure: false,
        // pathRewrite: {
        //     [`^${value}`]: value // 本身的接口地址没有 '/api' 这种通用前缀，所以要rewrite，如果本身有则去掉
        // }
    };
});

module.exports = {
    baseUrl: '/',
    outputDir: 'dist',
    devServer: {
        // open: process.platform === 'darwin',
        host: '0.0.0.0',
        port: 8080,
        https: false,
        hotOnly: false,
        // disableHostCheck: true,
        // See https://github.com/vuejs/vue-cli/blob/dev/docs/cli-service.md#configuring-proxy
        proxy: proxyObj, // string | Object
        before: app => {}
    }
}